Systems and methods for creating and providing location-based content

ABSTRACT

A software product comprises instructions stored on non-transitory computer-readable media. The instructions, when executed by a computer, perform steps for providing a guided tour to a user via a mobile computing device. The steps include the step of playing a first data file on the mobile computing device when the mobile computing device is at a first location, and the step of playing a second data file on the mobile computing device when the mobile computing device is at a second location. A media file locally stored on the mobile computing device is automatically played after the playback of the first data file and before the playback of the second data file. The user is provided with an option to make a donation to an organization associated with the first location when the mobile computing device is at the first location.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.14/327,256, filed Jul. 9, 2014, which claims priority to U.S.Provisional Patent Application No. 61/844,332 filed Jul. 9, 2013, theentire contents of which are incorporated herein by reference.

FIELD OF THE INVENTION

The present invention is directed generally to the creation anddissemination of content based on the location and context of a user.More specifically, the present invention is directed to systems andmethods for providing customized guided tours to users via the users'mobile devices.

SUMMARY

Systems and methods for providing guided tours to users via theirrespective computing devices are disclosed herein. According to oneembodiment, a communications system comprises a content providingdevice. The content providing device has a first processor in datacommunication with a first input device, a first output device, a firstnetworking device, and a first non-transitory computer memory having afirst program. The communications system further comprises a usercomputing device having a second processor in data communication with asecond input device, a second output device, a second networking device,a global positioning system, a short messaging service component, and asecond non-transitory computer memory having a second program and amedia file. The first non-transitory computer memory includes a firstdata file associated with a first location and a second data fileassociated with a second location. The first program and the secondprogram collectively include instructions for causing the contentproviding device to transmit the first data file to the user computingdevice when the user computing device is proximate the first location,and also include instructions for causing the content providing deviceto transmit the second data file to the user computing device when theuser computing device is proximate the second location. The secondprogram includes instructions for allowing a user of the user computingdevice to make a donation to an organization associated with the firstlocation when the user computing device is at the first location. Thesecond program further includes instructions for automatically causingplayback of the media file on the second output device after the firstdata file has been played on the second output device and before thesecond data file is played on the second output device.

A software product comprising instructions is disclosed according toanother embodiment. The instructions are stored on non-transitorycomputer-readable media, and when executed by a computer, perform stepsfor providing a guided tour to a user via a mobile computing device. Thesteps include the step of playing a first data file on the mobilecomputing device when the mobile computing device is at a firstlocation, and the step of playing a second data file on the mobilecomputing device when the mobile computing device is at a secondlocation. A media file locally stored on the mobile computing device isautomatically played after the playback of the first data file andbefore the playback of the second data file. The user is provided withan option to make a donation to an organization associated with thefirst location when the mobile computing device is at the firstlocation.

According to yet another embodiment, a communications system comprises acontent providing device. The content providing device has a firstprocessor in data communication with a first input device, a firstoutput device, a first networking device, and a first non-transitorycomputer memory having a first program. The communications systemfurther comprises a user computing device having a second processor indata communication with a second input device, a second output device, asecond networking device, a global positioning system, a short messagingservice component, and a second non-transitory computer memory having asecond program and a media file. The first non-transitory computermemory includes a first data file geo-tagged to a first location and asecond data file geo-tagged to a second location. The first program andthe second program collectively include instructions for causing thecontent providing device to transmit the first data file to the usercomputing device when the user computing device is proximate the firstlocation, and also include instructions for causing the contentproviding device to transmit the second data file to the user computingdevice when the user computing device is proximate the second location.The second program includes instructions for allowing a user of the usercomputing device to make a donation to an organization associated withthe first location when the user computing device is at the firstlocation. The second program further includes instructions for settingan accuracy threshold and a recency threshold based on a mode of travelof the user.

BRIEF DESCRIPTION OF THE DRAWINGS

Illustrative embodiments of the present invention are described indetail below with reference to the attached drawing figures and wherein:

FIG. 1 shows a schematic illustrating electronic communication betweenvarious components of a communications system for providinglocation-based content to users, according to an embodiment.

FIG. 2 shows a schematic illustrating electronic communication betweenvarious components of a content providing system of the communicationsystem of FIG. 1.

FIG. 3 shows a schematic outlining various modules of a server-sideprogram of the content providing system of FIG. 2.

FIG. 4 shows a schematic illustrating electronic communication betweenvarious components of a user communication device of the communicationsystem of FIG. 1.

FIG. 5 shows a schematic outlining various modules of a client-sideprogram of the user communication device of FIG. 4.

FIG. 6 schematically illustrates a tour being taken by users of the usercommunication device of FIG. 4.

FIGS. 7A-7B show a flowchart outlining various steps of a method ofusing the communications system of FIG. 1, according to an embodiment.

FIG. 8 is a schematic outlining different types of content that may bedisseminated from the content providing system of FIG. 2 to the usercomputing device of FIG. 4.

FIG. 9 is a schematic illustrating various fields in a profile of theusers of the user communication device of FIG. 4.

FIG. 10 is a schematic showing an exemplary interface of the client-sideprogram of FIG. 5.

FIG. 11 is a schematic showing another exemplary interface of theclient-side program of FIG. 5.

FIG. 12 shows a flowchart outlining various steps of a method fortriggering content on the user communication device of FIG. 4, accordingto an embodiment.

FIG. 13 shows a schematic outlining various types of tour channels.

FIG. 14 shows a schematic outlining various modes of travel that a usermay employ when taking a tour.

FIG. 15 shows a schematic showing yet another exemplary interface of theclient-side program of FIG. 5.

DETAILED DESCRIPTION

The tourism industry, according to the World Tourism Organization, hasexperienced continued growth over the past several years, and is now oneof the fastest growing economic sectors in the world. People worldwide,in increasing numbers, are traveling both domestically andinternationally to explore and experience different destinations. Travelguidebooks, which help orient the tourists and aim to enhance theirexplorative excursions, therefore, are also becoming increasinglyprevalent.

Travel guidebooks are now available in electronic form (e.g. as adigital book), which a user may download or stream on a computing device(e.g., a laptop or a cell phone). Generally, however, such digitalguidebooks do not take into account the exact location of the user.Thus, the user may only obtain additional information about his localeusing the digital guidebook if he knows what his current location is,which is often not the case. Further, digital guidebooks do not takeinto account a specific user's intended path of travel and force theuser to tailor his travel according to the information in the guidebook,which too is undesirable.

Some travelers may retain personal tour guides to accompany them ontheir travels. A tour guide, however, may not be familiar with all thevarious places that a traveler wishes to explore, and may be unavailableto accompany the traveler for the entire duration of his visit. Further,for many travelers, this option may be prohibitively expensive.

There is thus a need for robust systems and methods that are easilyaccessible to the masses and which provide guided tours to touristsbased on their current location, path of travel, and individualizedpreferences. The present invention is generally directed to such systemsand methods.

Attention is directed now to FIG. 1, which shows a system 100 forproviding location-based content to one or more users according to anembodiment of the present invention. The system 100, which may also bereferred to herein as the communications system 100, may comprise acontent providing system (or device) 102. The communications system 100may further comprise one or more user computing devices, such as theuser computing devices 202, 204, and 206. The user computing devices202, 204, and 206 may be in data communication with the contentproviding system 102. For example, the user computing devices 202, 204,and 206 may be in data communication with the content providing system102 over a network 104, as discussed in more detail below.

Focus is directed now to FIG. 2, which shows the content providingsystem 102 in more detail. The content providing system 102 may comprisea processor 104. The processor 104 may be any type of computationalcircuit, such as but not limited to a microprocessor, a microcontroller,a controller, a complex instruction set computing (CISC) microprocessor,a reduced instruction set computing (RISC) microprocessor, a very longinstruction word (VLIW) microprocessor, a graphics processor, a digitalsignal processor, or any other type of processor or processing circuitcapable of performing the desired functions. The content providingdevice 102 may also include a storage unit 106, a computer memory 108,an input device 110, an output device 112, and a networking device 114,each of which may be in data communication with the processor 104.

The storage unit 106 may be, for example, a disk drive that storesprograms and data, and the storage unit 104 is illustratively shownstoring a program (or application) 116 embodying the steps and methodsset forth below. It should be understood that the program 116 could bebroken into subprograms and stored in storage units of separate devicesand that data could be transferred between those storage units usingmethods known in the art. A dashed outline within the computer memory108 represents the software program 116 loaded into the computer memory108 and a dashed line between the storage unit 106 and the computermemory 108 illustrates the transfer of the program 116 between thestorage unit 106 and the computer memory 108.

The input device 110 may comprise one or more keys, switches, knobs,sensors, remote controllers, microphones, stylus pens, cameras,receivers (e.g., RFID or Bluetooth receivers), inputs slots for CD, DVD,VHS, USB, SD cards, et cetera. In the preferred embodiment, the inputdevice 110 may include at least a wired or wireless keyboard and amouse. The output device 112 may comprise one or more display screens(e.g., CRT, LCD, Plasma, et cetera), speakers, transmitters (e.g., RFIDor Bluetooth emitters), or any other appropriate visual or audio outputdevices whether now known or later invented. In some embodiments, thefunctionality of the input and output devices 110, 112 may be combinedinto a solitary device (e.g., a touch screen, a transceiver, et cetera).The networking device 114 may be any networking device that allows thecontent providing system 102 to connect to the network 104, such as aswitch, router, modem, networking card, antenna, transceiver, et cetera.The network 104 may be any suitable network that allows forbidirectional communication between the content providing system 102 andthe user computing devices 202, 204, and 206, and/or bidirectionalcommunication between the user computing devices 202, 204 and 206. Forexample, the network 104 may be one or more of a wireless (or wired)wide area network, a local area network, a personal area network, acellular network (e.g., GSM or CDMA), a Bluetooth network, an Infrarednetwork, the World Wide Web, et cetera.

In some embodiments, the content providing system 102 may comprise asolitary server, computer (e.g., a desktop or laptop computer), or othersuitable computing device. In other embodiments, the content providingsystem 102 may comprise a cluster or collection of servers, computers,or other suitable computing devices. Typically, a cluster or collectionof servers may be used when the demands of client devices (e.g., usercomputing devices 202, 204, and 206) are beyond the reasonablecapability of a single server or computer 102. In some embodiments, theservers in the cluster or collection of servers may be interchangeablefrom the perspective of the client devices 202, 204 and 206.

FIG. 3 is a schematic representation of the program (or server-sideapplication) 116. As can be seen, the server-side application maycomprise a user communications module 118, a content retrieval module120, a content communications module 122, a storage module 124, astatistics module 126, and a floor plan integration module 128, thefunctionality of each of which is described in more detail below. Peopleof skill in the art will appreciate that in some embodiments, one ormore of these modules may be omitted, and that in other embodiments, onemodule (e.g., the content communications module 122) may encompass thefunctionality provided by another module (e.g., the content retrievalmodule 120).

Attention is directed now to FIG. 4, which shows the user computingdevice 202. The user computing device 202 may comprise a processor (orcontroller) 208, which may be in data communication with a storage unit210, a computer memory 212, an input device 214, a networking device218, an output device 220, a global positioning system (“GPS”) 222, anda short messaging service (“SMS”) component 224. Schematically, the usercomputing devices 204 and 206 (see FIG. 1) may be generally identical tothe user computing device 202 shown in FIG. 4; that is, each of the usercomputing devices 204 and 206 may similarly include a processor that isin data communication with a storage unit, a computer memory, an inputdevice, a networking device, an output device, a global positioningsystem, and a short messaging service component.

The storage unit 210 may be, for example, a disk drive that storesprograms and data, and the storage unit 210 is illustratively shownstoring a program (or client-side application or local contentapplication) 216 embodying the steps and methods set forth below. Theprogram 216 may in some embodiments operate in conjunction with theprogram 116 of the content providing system 102. It will be understoodthat the program 216 could be broken into subprograms and stored instorage units of separate devices and that data could be transferredbetween those storage units using methods known in the art. A dashedoutline within the computer memory 212 represents the software program216 loaded into the computer memory 212 and a dashed line between thestorage unit 210 and the computer memory 212 illustrates the transfer ofthe program 216 between the storage unit 210 and the computer memory212.

The input device 214, akin to the input device 110 of the contentproviding system 102, may comprise one or more keys, switches, knobs,sensors, remote controllers, microphones, stylus pens, cameras,receivers (e.g., RFID or Bluetooth receivers), input slots for CD, DVD,VHS, USB, SD cards, et cetera. The output device 220 may comprise one ormore display screens (e.g., CRT, LCD, Plasma, et cetera), speakers,transmitters (e.g., RFID or Bluetooth emitters), or any otherappropriate visual or audio output devices whether now known or laterinvented. In some embodiments, the functionality of the input and outputdevices 214, 220 may be combined into a solitary device (e.g., a touchscreen, a transceiver, et cetera). The networking device 218 may be anynetworking device that allows the user computing device 202 to connectto the network 104, such as a switch, a router, a modem, a networkingcard, an antenna, a transceiver, et cetera. The GPS 222, as is known,may utilize a network of satellites orbiting the earth to ascertain thelocation of the user computing device 202. The SMS component 224 mayallow the user of the user computing device 202 to send and receive textmessages.

In the preferred embodiment, the user computing device 202 may be amobile device, such as a laptop (e.g., an Apple® Macbook, Dell®Ultrabook, HP® Envy, Sony® Vaio), a tablet (e.g., Apple® iPad, Samsung®Chromebook, Dell® Venue, Microsoft® Surface Pro, Google® Nexus), a smartphone (e.g., Apple® iPhone, BlackBerry® Bold, LG® G2, Samsung® Galaxy),et cetera. For example, in one embodiment, the user computing device 202may be a laptop, the user computing device 204 may be a tablet, and theuser computing device 206 may be a smart phone. In another embodiment,similarly, the user computing device 202 may be a tablet whereas theuser computing devices 204 and 206 may be smart phones. Although certainmobile devices are identified herein by name, those skilled in the artwill appreciate that any suitable mobile device, whether now known orlater developed, may be utilized in the system 100.

While FIG. 1 shows three user computing devices 202, 204, and 206, itwill be appreciated that this configuration is exemplary only and thatmany (e.g., tens, hundreds, thousands, et cetera) user computing devicesmay similarly be in data communication with the content providing system102 at one time. Further, although not expressly detailed in thefigures, those skilled in the art will also readily appreciate that eachof the user computing devices 202, 204, and 206 (and the contentproviding system 102) may include an operating system (e.g., Microsoft®Windows, Mac® OS, UNIX® OS, Linux® OS, Palm® OS, the Android OS, and theSymbian OS) that controls basic tasks such as the control and allocationof memory, facilitation of networking, file management, prioritizationof processes, et cetera.

Focus is directed now to FIG. 5, which is a schematic representation ofthe program (or client side application or user computing deviceapplication) 216 of the user computing devices 202, 204, and 206. As canbe seen, the program 216 may comprise a variety of modules, including auser communications module 226, a content communications module 228, acontent retrieval module 230, a location determination module 232, adonations module 234, a resources monitoring module 236, a deviceintegration module 238, and a social networking module 240. People ofskill in the art will appreciate that in some embodiments, one or moreof these modules may be omitted, and that in other embodiments, onemodule (e.g., the content communications module 228) may encompass thefunctionality provided by another module (e.g., the content retrievalmodule 230).

The workings of the system 100 for providing location-based content willnow be described with a non-limiting example. Assume, with reference toFIG. 6, that: (1) users 302 and 304, having user computing devices 202and 204, respectively, are traveling in a vehicle 300 in a direction Hfrom a point A to a point D; (2) the user computing device 202 is asmart phone utilizing a network N1 (e.g., ATT® or another cellularnetwork) and the user computing device 204 is a smart phone utilizing anetwork N2 (e.g., Sprint® or another cellular network); (3) the user 302is an adult whereas the user 304 is a child; (4) the area between pointsA and B represents a celebrated national park 306, and point A2represents a famous lake 306A within the park 306; (4) the area betweenpoints B and C represents a historic district 308 and the area betweenpoints B1 and B2 includes a building (e.g., a museum) 310 that showcasesmemorabilia from this historic district 308; (5) the area 312 betweenpoints C and D is represents a Civil War battlefield; and (6) in thearea between points A and C, both networks N1 and N2 provide both voiceand data coverage, whereas in the area between points C and D, networkN1 provides both voice and data coverage while the network N2 providesonly intermittent voice coverage.

FIG. 7 illustrates a method 400 detailing the use of the system 100 bythe users 302 and 304. Those skilled in the art will appreciate that themethod 400 is merely exemplary. The method 400 may be employed in manydifferent embodiments or examples not specifically depicted or describedherein. In some embodiments, the method steps of the method 400 may beperformed in the order presented. In other embodiments, steps of themethod 400 may be performed in a different suitable order. In otherembodiments still, one or more of the steps of the method 400 may becombined with other steps, or omitted entirely.

The method 400 may begin at step 402, and at step 404, an administratorof (or another entity affiliated with) the system 100 may use the inputdevice 110 and the output device 112 of the content providing system102, along with the storage module 124 of the program (or server-sideapplication) 116, to store location-based content 130 in the storageunit 106. The location-based content 130 may include a variety ofinformation about many thousands of popular destinations worldwide; forinstance, the location-based content 130, in this example, may includeinformation about the national park 306, the lake 306A, the historicdistrict 308, the museum 310, and the battlefield 312 (collectively,exemplary destinations 316).

The location-based content 130 may be any type of content that relatesdirectly or indirectly to the exemplary destinations 316 and which mayenhance the experience of the users 302, 304 as they visit them. Forexample, the location-based content 130 may include audio content 132(e.g., a short audio book about the national park 306 and itssignificance), images 134 (e.g., images of paintings depicting thebattlefield 312), video content 136 (e.g., a silent video about thehistoric district 308), audio/video content 138 (e.g., an audio/videopresentation or movie about the museum 310 and the exhibits therein),text 140 (e.g., an article about the lake 306A), et cetera (see FIG. 8).In many cases, the location-based content 130 may be primarilyinformative; however, the location-based content 130 may also take otherforms (e.g., be primarily comedic, conspiratorial, entertaining, etcetera). In some embodiments, the location-based content 130 may beconfigured to provide information about the exemplary destinations 316in an informal way (e.g., in the form of a story).

The location-based content 130 may be geo-tagged using methods known inthe art. For example, the audio book 132 about the national park 306 maybe geo-tagged to the point A, the article 140 about the lake 306A in thepark 306 may be geo-tagged to the point A2, the silent video 136 aboutthe historic district 308 may be geo-tagged to the point B, theaudio/video presentation 138 about the museum 310 may be geo-tagged tothe point B1, and the images 134 of the battlefield 312 may begeo-tagged to the point C, as discussed in more detail below.

The step 404 may be performed by the administrator(s) remotely (e.g.,over the network 104) or locally. Remote capability may allow thelocation-based content 130 to be continually updated as required andimproved with ease. In some embodiments, more than one administrator maycompile the location-based content 130 in the content providing system102. In other embodiments, some or all of the location-based content 130may be populated using “internet scraping” or “crowd sourcing.” In otherembodiments still, users (e.g., users 302 and 304) may be allowed tocompile some or all of the content 130, or may be allowed to providefeedback (e.g., via the computing device 202 and 204) which theadministrator may take into account when updating the content 130. Thoseskilled in the art will appreciate that in many embodiments, a largeamount of time (e.g., days, months, et cetera) may pass after step 404is executed and before the remaining steps in the method 400 areperformed.

At step 406, the users 302 and 304 may download and install theapplication (or program) 216 on their respective user computing devices202 and 204. This step 406 may be performed at any time before the users302 and 304 reach the point A. For example, the users 302 and 304 mayhave downloaded and installed the application 216 on their respectivelyuser computing devices 202 and 204 before they began the instant trip(e.g., at home via the Apple® App store or the Google® Play store). Insome embodiments, the users 302 and 304 may be required to pay a fee toutilize the application 216. In other embodiments, however, theapplication 216 may be utilized by the users 302 and 304 free of charge,and administrators of the system 100 may generate revenues from theapplication 216 using traditional methods, such as via sponsors,donations, in-app purchases of additional content by the users, etcetera.

In some embodiments, the users 302 and 304 may be required to create aunique profile P during the installation process. For example, the user302 may be required to create a profile P1 (see FIG. 9) and the user 304may be required to create a profile P2 in order to use the application216. The profiles P1 and P2 may have various fields outlininginformation about the users 302 and 304, respectively. For example, theprofile P1 may include the name of the user 302, his mailing address,date of birth, e-mail address, credit card number, name of the usercomputing device 202, the network associated with the user computingdevice 202, Facebook® and Instagram® Ids, Twitter® handle, et cetera.The profile P2 of the user 304 may include similar information about theuser 304. The profiles P of the users 302 and 304 (and of other users)may be stored in the storage unit 106 of the content providing system102, on an external drive in communication with the content providingsystem 102, on the Cloud, et cetera. It will be appreciated that in someembodiments, the profile P may include additional fields not expresslyidentified herein, and that in other embodiments, some of the fields maybe omitted. In other embodiments still, the creation of the profile Pmay not be a pre-requisite to using the program 216.

At step 408, the users 302 and 304 may launch the application 216 ontheir user computing devices 202 and 204, respectively. At step 410, thevehicle 300 may reach the point A. At step 412, as the vehicle 300reaches the point A, the user computing device 202, via its usercommunications module 226 and the networking device 218, may send arequest R1 to the content providing system 102. Similarly, the usercomputing device 204, via its user communication module 226 and thenetworking device 218, may send a request R2 to the content providingsystem 102. The requests R1 and R2 may include information about thecurrent location of the user computing devices 202 and 204, asdetermined by the global positioning system 222 of the devices 202, 204and/or the location determination module 232 of the application 216.

The location determination module 232 may be robust and may determinethe location of the user computing devices 202 and 204 in one of anynumber of ways. For example, in some embodiments, the locationdetermination module 232 may query the GPS 222 to determine the currentlocation of the devices 202 and 204. In other embodiments, the locationdetermination module 232 may additionally comprise a Wi-Fi basedpositioning system (WPS) that may, for example, use network localizationtechniques to determine the location of the user. In other embodimentsstill, the location determination module 232 may use cell towertriangulation, Bluetooth, or another suitable method to ascertain thelocation of the devices 202 and 204. The location determination module232, in some embodiments, may also conduct redundancy checks (e.g.,verify the location as determined by the GPS 222 using cell towertriangulation) to ensure that the location of the devices 202 and 204has been accurately determined. In some embodiments, the users 302 and304 may be allowed to manually convey their location to the locationdetermination module 232 (e.g., using the input device 214 and theoutput device 220).

At step 414, the user communication module 118 of the content providingsystem 102 may receive the requests R1 and R2. At step 416, the program116 may utilize the content retrieval module 120 to retrieve thelocation-based content 130 about the national park 306 from the storageunit 106. At step 418, the content communications module 122 of thecontent providing system 102, in conjunction with the networking device114, may cause the location-based content 130 (e.g., the audio book 132about the park 306) to be transmitted to the user computing devices 202and 204.

At step 420, the content retrieval modules 230 of the user computingdevices 202 and 204, over the networks N1 and N2, respectively, mayreceive the audio book 132. At step 422, application 216 may cause thecontent 132 to be streamed on the user computing devices 202 and 204 forthe users 302 and 304, respectively. The duration of the audio book 132may be configured so as to ensure that the playback of the audio book132 concludes before the vehicle 300 reaches the point A2 (e.g., when itreaches a point A1).

At step 424, as the playback of the audio book 132 concludes, thevehicle 300 may reach the point A1. The program 216 may determine thatthe vehicle 300 is yet to reach the point A2 (to which point the content140 is tagged), and that the vehicle 300 is expected to reach the pointA2 in a certain amount of time (e.g., ten minutes). The program 216 maydetermine the expected time of arrival of the vehicle 300 at point A2via one of a number of ways. For example, the program 216 may computethe average speed of the vehicle 300 since it traversed the point A anduse this average speed to determine that the vehicle 300 is likely toreach the point A2 in ten minutes. Alternatively, the statistics module126 of the program 126, which may comprise information about othervehicles that have travelled from point A to point B in the past,estimate the time in which the vehicle 300 will reach the point A2. Inother embodiments still, this determination of the estimated time ofarrival of the vehicle 300 at the point A2 may be omitted.

At step 426, the program 216 may use the device integration module 238to sift through and evaluate content stored locally on the respectivedevices 202 and 204 and may cause the same to be displayed (or played)on the user computing devices 202 and 204. For example, the program 216,recognizing that the audio book 132 has concluded and that the vehicle300 is yet to reach the point A2 where the next geo-tagged content(i.e., the text 140 tagged to the lake 306A at point A2) is due to beplayed, may play on the user computing device 202 songs from a playlistQ that the user 302 had saved locally on his device 202. Similarly, forexample, the program 216 may cause a video clip (or any other mediafile) V stored locally on the user computing device 204 to be displayedon the user computing device 204 for the user 304 to enjoy. In this way,the users 302 and 304 may seamlessly enjoy personalized content duringintervals between the triggering of sequential location-based content130, which may enhance their experience and ensure that the users 302and 304 remain continually immersed and engaged during the tour. Thoseskilled in the art will appreciate that playback by the deviceintegration module 238 of content locally saved on the respectivedevices 202 and 204 may be preferable to filling the gaps between thetriggering of the location-based content 130 with generic content. Ofcourse, in some embodiments (e.g., where the user computing devices 202,204 do not have suitable content that is stored locally), the interludesbetween the triggering of sequential location-based content 130 may befilled with generic content (e.g., popular music, news stories, a radiochannel, et cetera). In other embodiments still, the users 302 and 304may be allowed to select the locally stored content that they desire toplay on their respective user computing devices 202 and 204 during theinterludes.

At step 428, the vehicle 300 may reach the point A2, and in line withthe disclosure above, the content 140 about the lake 316 may bedisplayed on the respective output devices 220 of the user computingdevices 202 and 204. More specifically, the user communication modules226 of the devices 202 and 204 may respectively send a request R3 and R4to the content providing system 102. The content retrieval module 120 ofthe server-side program 116 may retrieve the content 140 from thestorage unit 106, and the content communication module 122, inconjunction with the networking device 114, may cause the content 140 tobe transmitted to the user computing devices 202 and 204. Theapplication 216, using the respective content retrieval modules 230 andnetworks N1 and N2 of the devices 202 and 204, may retrieve the content140 and cause the same to be displayed on the respective output devices220 of the user computing devices 202 and 204.

In some embodiments, the location-based content (e.g., content 140)transmitted to the user computing device 202 as the vehicle 300 reachesthe point A2 may be different from the location-based contenttransmitted to the user computing device 204. For example, if the text140 includes graphic language, it may be transmitted to the usercomputing device 202 but not to the user computing device 204 becausethe user 304 of the device 204, in this example, is not an adult. Insuch a case, the location-based content transmitted to the user 304 mayinclude games (e.g., crosswords and puzzles), quizzes, trivia, etcetera. Thus, the location-based content 130 communicated by the system102 to the devices 202 and 204 may vary based on the age of the users302 and 304. Similarly, for example, the location based content 130communicated by the system 102 to the devices 202 and 204 may vary basedon the preferences of the users 302 and 304, respectively; for example,the user 304 may prefer only audio/visual content, in which case, onlyaudio/visual content may be communicated by the system 102 to the device204. The users 302 and 304 may be allowed to set (and revise) suchpreferences when they download the application 216, or anytimethereafter.

At step 430, the program 216 may utilize the donations module 234 toinquire via the output device 220 of the user computing device 202whether the user 302 wishes to donate monies to an organization 320associated with the national park 306. The organization 320 may be anyorganization associated with the national park 306, such as a non-profitorganization, a local community foundation, a local or national charityfoundation, a religious organization, et cetera, tasked with, forexample, maintaining the park 306. As will be understood from thedisclosure herein, the user 304 may not be asked to donate to theorganization 320 because the user 304, in this example, is not an adult.

The donations module 234 may solicit the donations in one of a varietyof ways. For example, in some embodiments, the donation module 234 mayactivate the short messaging service component 224 and allow the user304 to donate monies via simple text message. FIG. 10 shows oneexemplary interface 250 of the application 216 as displayed on theoutput device 220. As can be seen, the user 302 may simply tap theoutput device (e.g., the screen) 220 to donate $5 (or another amount) tothe organization 320 using the short messaging service component 224activated by the donations module 234. It will be appreciated that theshort message may include processing instructions to properly effectuatethe donation (e.g., include processing instructions via short code, theamount to be donated, tracking information, et cetera). In otherembodiments, the donations module 234 may solicit donations in adifferent manner. For example, the donations module 234 may direct theuser computing device 202 to a website of the organization 320 (or thepark 306) and allow the user 302 to donate monies using his credit card,via PayPal®, et cetera.

The ability of the application 216 to collect donations in thisnon-intrusive fashion via the donations module 234 may be highlybeneficial. The user 302 may be inclined to donate at least a modestamount to the organization 320 because of the convenience and because hehas just toured the park 306 and feels a connection therewith. However,it will be appreciated that the donations may also be solicited from theuser 302 before he reaches the point A (or after he has passed the pointB). This functionality of the donations module 234 may provide aconsistent stream of revenue for the exemplary locations 316 and aid intheir longevity, particularly in high traffic areas.

At step 432, the vehicle 300 may reach the point B, and in line with thedisclosure above, the video content 136 (i.e., the silent video aboutthe historic district 308 geo-tagged to the point B) may be displayed onthe devices 202 and 204. While not expressly shown in the figures, itwill be appreciate that donations to an organization affiliated with thehistoric district 308 may be solicited from the user 302 at this point(or thereafter).

At step 434, the vehicle 300 may reach the point B1, which may triggerthe audio/video presentation 138 about the museum 310. Assume that themuseum building 310 has several floors (e.g., floors 310A and 310B, seeFIG. 6) and is being used to display several exhibits (e.g., exhibit310D on the floor 310A and exhibit 310E on the floor 310B). Assume alsothat an exhibit 310C is being displayed outside the museum building 310.The audio/video presentation 138, thus, may include sub-parts 138A,138B, and 138C, which may respectively be triggered when the users 302and 304 are in close proximity to the exhibits 310C, 310D, and 310E.

Assume further that the users 302 and 304 are required to exit thevehicle 300 at the point B1 and travel to the museum 310 on foot. Theprogram 216 may use the location determination module 232 to infer thatthe users 302 and 304, currently travelling at a relatively slower pace,are now afoot, and seamlessly transition from the driving scale to awalking scale without requiring additional input from the users 302 and304. Such a seamless transition may ensure that the users 302 and 304remain continually immersed for the entirety of their guided tour. Insome embodiments, however, the users 302 and 304 may be allowed toindicate their mode of travel using the respective input devices 214 oftheir user computing devices 202 and 204.

At step 436, the users 302 and 304 may walk to the exhibit 310C, whichmay trigger the sub-part 138A of the audio/video presentation 138. Atstep 438, the users 302 and 304 may enter the museum building 310.

People of skill in the art appreciate that the functionality of theglobal positioning system 222 of the devices 202 and 204 may, at leastin some instances, be curtailed indoors. Therefore, once the users 302and 304 are inside the building 310, at step 439, the locationdetermination module 232 may, instead of the GPS 222, determine thelocation of the users 302 and 304 via other means. For example,Bluetooth beacons 310F and 310G may be located adjacent the exhibits310D and 310E, respectively, and while the users 302 and 304 areindoors, the program 216 may use these Bluetooth beacons 310F and 310Gto trigger the location-based content. That is, at step 439, the program216 may trigger the sub-part 138B of the audio/video presentation 130when the users 302 and 304 are on the floor 310A proximate the exhibit310D, and trigger the sub-part 138C of the audio/video presentation 130when the users 302 and 304 are proximate the exhibit 310E on the floor310B. In some embodiments, the application 116 (and/or 216) may usepublically available floor plans of the museum 310 (e.g., throughstandard map kits provided by Apple®, Google®, et cetera) to enhance thetriggering of the various sub-parts of the location-based content 138 atthe different floors (e.g., floors 310A and 310B).

At step 440, the users 302 and 304 may exit the museum 310 and begindriving towards the point C. As will be appreciated, the program 216 mayseamlessly transition from the walking scale it utilized while the users302 and 304 were in the building 310 to a driving scale.

At step 442, as the users 302 and 304 drive towards the point C and thevehicle 300 is in proximity thereof, the resources monitoring module 236of the device 204 may ascertain that the network N2 associated with thedevice 204 does not provide any data coverage between points C and D.For example, the resource monitoring module 236 may refer to a coveragemap provided by the administrators of the network N2 to determine thatnetwork N2 does not provide data coverage between points C and D.Alternatively, the resource monitoring module 236 may continually orintermittently poll the networks N1 and N2 to determine whether dataservices (e.g., 3G, 4G, et cetera) are available.

Therefore, at step 444, the content communications module 228, inconjunction with the user communications module 226 and the contentretrieval module 230, may cause the images 134 associated with thebattlefield 312 to be downloaded and locally stored in the storage unit210 of the device 204 in advance. In other embodiments, the application216 may have downloaded the images 134 onto the storage unit 210 of thedevice 202 after the vehicle 300 reached the point C, and then causedthe device 202 to transmit these images 134 to the device 204 via alocal network (e.g., via Bluetooth). In this way, the user 304 may beable to enjoy the content 134 associated with the battlefield 312notwithstanding the fact that the network N2 associated with the device204 provides no data coverage between the points C and D.

At step 446, once the vehicle 300 passes the point E and the tourconcludes, the social networking module 240 of the application 216 maycause some or all of the content 130 to be published on social media(e.g., on the Facebook® account, Instagram® account, et cetera, of theusers 302 and 304). Friends and family of the users 302 and 304 mayhence remain informed about the users' travels.

The resources monitoring module 236 may be robust, and in addition tohaving the ability to poll the networks N1 and N2 for connectivity, mayalso be able to purge location-based content 130 after it has beendownloaded to the device 204. For example, if the free space on thestorage unit 210 of the device 204 is low, at step 448, the resourcesmonitoring module 236 may cause the content (e.g., the images 134) to bedeleted from the storage unit 210 after it has been displayed. If,however, the storage unit 210 has ample free space, the logic of theresources monitoring module 236 may allow the content 134 to remain onthe storage unit 210. The resource monitoring module 236, in determiningwhether or not to purge the content 134, may also take into account thesize of the data files comprising the content 134. For example, wherethe data files comprising the content 134 are large, the resourcesmonitoring module 236 may purge them from the storage unit 210 even whenthe storage unit 210 has ample free space.

Hence, the application 216 may, depending on the scope of the availableservices on the user computing devices 202 and 204, the availability ofthe networks N1 and N2, the size of the data files comprising thelocation-based content 130, et cetera, choose to fetch and cache thecontent 130 on the devices 202 and 204 in advance, or may stream thecontent 130 directly from the server 102.

At step 450, the application 216 may use the output devices 220 of theuser computing devices 202 and 204 to inform the users 302 and 304 ofother nearby travel destinations that may be of interest to the users302 and 304. For example, the application 216 may convey to the users302 and 304 via the output devices 220 of their respective usercomputing devices 202 and 204 that a historic library is within fivemiles (or ten miles, or another distance) of the point D, so that theusers 302 and 304 may extend their tour if desired. The method 400 maythen end at step 452.

While the system 100 has been illustrated herein via users 302 and 304that are driving and/or walking, it will be appreciated that theworkings of the system 100 are fully scalable and may be employed whilethe users 302 and 304 are biking, boating, flying, et cetera. Further,as noted above, the skilled artisan will appreciate that the method 400is merely an example employed to illustrate the various facets of thesystem 100 for providing location-based content 130 to users, and thatvarious steps of the method 400 may, in embodiments, be modified oromitted. In some embodiments, the content 130 may be sponsored by one ormore sponsors. For example, the content 130, as it is displayed, mayinclude a logo or message from the sponsor(s). The system 100 may thusprovide an avenue for sponsors to promote their respective products andservices at low cost.

Thus, as has been described, the system 100 may provide a flexibleplatform for presenting high-quality location-based information 130synchronized to the surroundings. The system 100 may function as amultimedia communication tool that connects people directly to sites ofinterest in real time, and may further be used to foster an experientialunderstanding of places in an entertaining and convenient manner. Thesystem 100 may also meet the communication and outreach needs ofcharitable organizations, public agencies, and businesses through thelatest developments in location-aware content creation and delivery.Destination businesses (e.g., resorts) may use the system 100 to attractand educate visitors by presenting great audio stories along approachcorridors; public agencies may use the system 100 inform visitors aboutthe lands they manage; rental car agencies, bus companies, railroadcompanies, airline companies, et cetera, may interpret the passinglandscapes for passengers to inspire their interest and help them passthe time. The system 100 may host all of these tours on its singleshared platform, or license a customized white label platform forexclusive, branded use by a particular entity. In some embodiments, thesystem 100 may feature popular channels to further inform and entertainthe users 302 and 304, such as an audio channel for conveying storiesabout significant historical landmarks to the users 302 and 304, a kidschannel for entertaining children, et cetera.

In some embodiments, the workings of the system 100 may be furthercustomized depending on the nature of the tour. For example, where theusers 302 and 304 are touring a famous airport 350, the system 100, inaddition to providing the users 302 and 304 a guided tour as discussedabove, may inform the users 302 and 304 about the status of theirrespective flights. For instance, as shown in the exemplary interface250A in FIG. 11, a message M may be displayed by the application 216 onthe output device 220 informing the user 302 that his flight 352 is nowboarding at a gate 354 (or is delayed, cancelled, et cetera). Similarly,for example, the system 100 may provide the users 302 and 304 withupdates regarding the weather, traffic, local events, et cetera.

As noted above with respect to the method 400, when delivering content130 to the user computing devices 202 and 204, the system 100 may takeinto account various factors, such as the mode of travel of the users302 and 304, their direction of travel, et cetera. FIG. 12 shows amethod 500 that illustrates these concepts in additional detail. Peopleof skill in the art will appreciate that the method 500, much like themethod 400, is merely exemplary. Assume, for this example, that the user302 is touring the Las Vegas Strip (or another popular destination), andthat the user 302 is on foot.

The method 500 may begin at step 502, and at step 504, the user 302 maybe allowed to select via the input and output devices 214 and 220 a tourchannel 602 (e.g., a best stories channel 602A, a history channel 602B,a news channel 602C, a kids channel 602D, et cetera; see FIG. 13). Atstep 506, the application 216 may ascertain a mode of travel 604 of theuser 302. As noted above, the mode of travel 604 may include any methodby which the user 302 may go from one point to another, such as forexample, a walking mode 604A, a biking mode 604B, a driving mode 604C, aflying mode 604D, a boating mode 604E, or any other mode 604F of travelnow known or later contemplated (see FIG. 14). In some embodiments, theuser 302 may be allowed to manually specify his mode of travel 604 usingthe input device 214 and the output device 220. Assume, for thisexample, that the mode of travel 604 of the user 302 is determined to bethe walking mode 604A.

At steps 508 and 510, the application 216 (using, e.g., the processor208 and the content communications (or another) module 228) may set anaccuracy threshold 606 and a recency threshold 608, respectively. Insome embodiments, the accuracy threshold 606 may comprise a unit formeasuring distance (e.g., 0.5 meters, 2 feet, 1 mile, et cetera) and therecency threshold 608 may comprise a unit for measuring time (e.g., 1millisecond, 10 seconds, et cetera). The values for the accuracythreshold 606 and the recency threshold 608 may depend on the mode oftravel 604. For example, if the mode of travel 604 is the walking mode604A, the accuracy threshold 606 may be selected to be 3 meters and therecency threshold 608 may be selected to be 2 seconds. If, for example,the mode of travel 604 is the driving mode 604C, the accuracy threshold606 may be selected to be 15 meters and the recency threshold may beselected to be 12 seconds. It will be appreciated from the discussionherein that the values for each of the accuracy threshold 606 (which ineffect broadly defines a radius within which the device 202 is located)and the recency threshold 608 (which outlines how quickly the locationof the device 202 is to be updated) may be smaller for the walking mode604A as compared to the driving mode 604C.

At step 512, the application 216 (using, e.g., the locationdetermination module 232 and the processor 208 as discussed above) mayobtain an updated location 610 of the device 202. At step 514, theapplication 216 (using, e.g., the content communications (or another)module 228) may determine whether the location 610 is within theaccuracy threshold 606. At step 516, the application 216 may determinewhether the location 610 was updated within the recency threshold 608.If the answers to both the questions posed at steps 514 and 516 are inthe affirmative, step 518 may next be performed; otherwise, theapplication 216 may return to step 512 to obtain the updated location610 of the device 202.

At step 518, the application 216 (in conjunction with the application116, for example) may return a set of possible locations 612 within anarea 614 defined by a radius R specified by the accuracy threshold 606with which any content 130 is associated. As will be appreciated,because the mode of travel 604 is the walking mode 604A, the radius Rdefined by the accuracy threshold 606 is relatively small; this ensuresthat the resources of the device 202 are not needlessly wasted by, forexample, considering locations miles away from the updated location 610.Had the mode of travel 604 at step 506 been determined to be the drivingmode 604C, however, a larger set of possible (i.e., potential) locations612 (within an area defined by a larger radius R specified by theaccuracy threshold 606) may have been returned at step 518. Assume, forexample, that at step 518, two possible locations 612A and 612B arereturned, each having a geo-tag radius 616A and 616B, respectively.Assume further that the user 302 is walking towards location 612A andaway from location 612B.

At step 520, the distance between the updated location 610 and thepossible locations 612 may be determined. In this example, thus, at step520, a distance 618A between the updated location 610 and the possiblelocation 612A may be determined, along with a distance 618B between theupdated location 610 and the possible location 612B. At step 522, theapplication 216 may ensure that the distances 618A and 618B are withinthe geo-tag radii 616A and 616B, respectively. At step 524, thedirection of travel 620 (e.g., north, south, north-east, et cetera) ofthe user 302 may be determined, and if it matches the geo-tag course asdetermined at step 526, at step 528, the content 130 associated with thelocation 612A may be played on the output device 220. If, on the otherhand, it is determined at step 522 that the distance is not within thegeo-tag radius or at step 526 that the direction of travel of the user302 does not match the geo-tag course, the method 500 may move to step525 where the application 216 may obtain the next location before itreturns to step 520. Steps 512-526 may be repeated once the playback ofthe content 130 concludes, for the entire duration of the tour. Themethod 500 may then end at step 530. Thus, as has been described,triggering of the content 130 by the system 100 may be both accurate andefficient, and may take into account various factors such as the user'smode and direction of travel.

In some embodiments, the application 216 (along with the application216, for example) may utilize Keyhole Markup Language (“KML”) overlaysin displaying a map 702 of a given area 704 where the user 302 islocated. Those skilled in the art appreciate that KML files may be usedto expose data (e.g., the location and type of a point of interest) onthe map 702 in various ways. Focus is directed now to FIG. 15, whichshows another exemplary interface 250B of the application 216. Much likethe interface 250 shown in FIG. 10, the interface 250B is exemplary onlyand is not intended to be limiting.

As illustrated in FIG. 15, assume that the area 704 comprises a forest704A, an airport 704B, a hospital 704C, a river 704D, and restaurants704E and 704F. Each of these may be highlighted for the user 302 on themap 702 in various ways. In some embodiments, for example, color codingmay be utilized (e.g., the forest 704A may be displayed in green color,the river 704D may be displayed in blue color, et cetera). In otherembodiments, alternatively or in addition, symbols may be used toconveniently convey the import of certain (or all) locations on the map702 (such as those depicting the airport 704B, the hospital 704C, therestaurants 704E and 704F, for example). In other embodiments still,text may be superimposed onto the map 702 to underscore the variouslocations on the map 702. The user 302 may in some embodiments beallowed to select the type of locations that he wants to be highlightedon the map 702; for example, at the request of the 302, the application216 may highlight every hospital (or every gas station, restaurant,convenience store, et cetera) on the map 702. Thus, for instance, if theuser is touring a particular location and wishes to find a restaurantwithin five miles of his current location, he may direct the application216 to display on the output device 202 the map 702 with all suchrestaurants highlighted thereon.

While not required, in some embodiments, the user 302 may be allowed torate his various destinations. For example, the user 302 may be allowedto rate the restaurant 704E on a scale from one to five. Such data maybe compiled by the statistics module 126, and used for the benefit ofthe user 302 and other users (e.g., the user 304). For example, if theuser 302 is in the area 704 a second time and directs the application216 to display nearby restaurants on the output device 220, therestaurant 704E may be flagged by the application 216 on the map 702 toindicate to the user 302 that he previously visited and enjoyed (ordisliked) the restaurant 704E. Similarly, such data (e.g., ratings) maybe displayed for other users (e.g., the user 304) so that they maybenefit from the experiences of those who were in the area 704 beforethe user 304.

Many different arrangements of the various components depicted, as wellas components not shown, are possible without departing from the spiritand scope of the present invention. Embodiments of the present inventionhave been described with the intent to be illustrative rather thanrestrictive. Alternative embodiments will become apparent to thoseskilled in the art that do not depart from its scope. A skilled artisanmay develop alternative means of implementing the aforementionedimprovements without departing from the scope of the present invention.

It will be understood that certain features and subcombinations are ofutility and may be employed without reference to other features andsubcombinations and are contemplated within the scope of the claims. Notall steps listed in the various figures need be carried out in thespecific order described.

The invention claimed is:
 1. A communications system, comprising: acontent providing device having a first processor in data communicationwith a first input device, a first output device, a first networkingdevice, and a first non-transitory computer memory having a firstprogram; and a user computing device having a second processor in datacommunication with a second input device, a second output device, asecond networking device, a global positioning system, a short messagingservice component, and a second non-transitory computer memory having asecond program and a media file; wherein: (1) the first non-transitorycomputer memory includes a first data file associated with a firstlocation, a second data file associated with a second location, and athird data file associated with a third location; (2) a networkassociated with the user computing device does not include data coverageat the third location; wherein the first program and the second programcollectively include instructions for causing the content providingdevice to transmit to the user computing device: (1) the first data filewhen the user computing device is proximate the first location; (2) thesecond data file when the user computing device is proximate the secondlocation; (3) the third data file before the user computing device isproximate the third location; wherein the second program includesinstructions for: (1) allowing a user of the user computing device tomake a donation to an organization associated with the first locationwhen the user computing device is at the first location; and (2)automatically causing playback of the media file on the second outputdevice after the first data file has been played on the second outputdevice and before the second data file is played on the second outputdevice.
 2. The communications system of claim 1 wherein the secondprogram activates the short messaging service component to enable theuser to make the donation.
 3. The communications system of claim 1wherein the media file is one of a music file and a video file.
 4. Thecommunications system of claim 1 wherein the second program includesinstructions for purging the third data file from the secondnon-transitory computer memory after it has been played on the secondoutput device.
 5. The communications system of claim 1 furthercomprising a second user computing device; and wherein: the firstnon-transitory computer memory includes a fourth data file associatedwith the second location; the content providing device transmits thefourth data file to the second user computing device when the seconduser computing device is proximate the second location, the fourth datafile being distinct from the second data file.
 6. The communicationssystem of claim 1 wherein at least one of the user computing device andthe second user computing device is a cell phone.
 7. The communicationsystem of claim 1 wherein the first data file comprises at least two ofaudio, video, and text.
 8. The communications system of claim 1 wherein:the first non-transitory computer memory includes a fourth data fileassociated with a fourth location; the content providing devicetransmits the fourth data file to the second user computing device whenthe second user computing device is proximate the fourth location; andthe second user computing device transmits the fourth data file to theuser computing device over a Bluetooth network.
 9. A software productcomprising instructions, stored on non-transitory computer-readablemedia, wherein the instructions, when executed by a computer, performsteps for providing a guided tour to a user via a mobile computingdevice, comprising: playing on the mobile computing device: a first datafile associated with a first location when the mobile computing deviceis at the first location; a second data file associated with a secondlocation when the mobile computing device is at the second location;determining that a network associated with the mobile computing devicedoes not include data coverage at a third location; transmitting to themobile computing device a third data file associated with a thirdlocation before the mobile computing device is proximate the thirdlocation: automatically playing a media file locally stored on themobile computing device after the playback of the first data file andbefore the playback of the second data file; and providing the user withan option to make a donation to an organization associated with thefirst location when the mobile computing device is at the firstlocation.
 10. The software product of claim 9 wherein each of the firstdata file and the second data file are automatically downloaded onto themobile computing device before the commencement of the tour.
 11. Thesoftware product of claim 9 wherein the first data file is automaticallydownloaded onto the mobile computing device when the mobile computingdevice is proximate the first location.
 12. The software product ofclaim 9 wherein the first data file includes at least one of audio,video, and text.
 13. The software product of claim 9 wherein the firstdata file is transmitted via a Bluetooth emitter from the mobilecomputing device to a second mobile computing device.
 14. The softwareproduct of claim 9 wherein the playback of the first data file istriggered by a signal from a Bluetooth beacon at the first location. 15.A communications system, comprising: a content providing device having afirst processor in data communication with a first input device, a firstoutput device, a first networking device, and a first non-transitorycomputer memory having a first program; a user computing device having asecond processor in data communication with a second input device, asecond output device, a second networking device, a global positioningsystem, a short messaging service component, and a second non-transitorycomputer memory having a second program and a media file; and wherein:the first non-transitory computer memory includes a first data filegeo-tagged to a first location, a second data file geo-tagged to asecond location, and a third data file geo-tagged to a third location;the first program and the second program collectively includeinstructions for causing the content providing device to transmit to theuser computing device: (1) the first data file when the user computingdevice is proximate the first location; (2) the second data file whenthe user computing device is proximate the second location; (3) thethird data file before the user computing device is proximate the thirdlocation upon determining that a network associated with the usercomputing device does not include data coverage at the third location;the second program includes instructions for at least one of: (1)allowing a user of the user computing device to make a donation to anorganization associated with the first location when the user computingdevice is at the first location; and (2) setting an accuracy thresholdand a recency threshold based on a mode of travel of the user.
 16. Thecommunications system of claim 15 wherein the content providing devicecomprises a server and the user computing device is one of a cell phoneand a tablet.
 17. The communications system of claim 16 furthercomprising a second user computing device for a second user; and whereinthe first data file is not transmitted to the second user computingdevice when the second computing device is proximate the first locationif the first data file contains graphic content and the second user is achild.
 18. The communications system of claim 15 wherein: the secondlocation is an airport; and the second program further includesinstructions for displaying a status of a flight of the user.
 19. Thecommunications system of claim 18 wherein the mode of travel comprises awalking mode and a driving mode, and wherein a value of the accuracythreshold for the walking mode is less than the value of the accuracythreshold for the driving mode.